import machine
import utime

# 初始化舵机和PWM周期
servo_pin = 27
servo_freq = 50
duty_min, duty_max = 2000, 8000

servo = machine.PWM(machine.Pin(servo_pin))
servo.freq(servo_freq)

# 将舵机初始化到一个适当的位置
servo.duty_u16(int(duty_min + (duty_max - duty_min) / 2))
utime.sleep_ms(500)

# 循环，让舵机来回摆动
while True:
    # 控制舵机向一个方向运动
    for duty in range(duty_min, duty_max, 1):
        servo.duty_u16(duty)
        utime.sleep_us(500)
    
    # 控制舵机向另一个方向运动
    for duty in range(duty_max, duty_min, -1):
        servo.duty_u16(duty)
        utime.sleep_us(500)